
package br.ucb.cesbdao.modeloTabelas;

/**
 * Síntese
 *    Atributos: atendentes e colunas
 *    Métodos: 
 *    		ModeloTabelaTrabalhador(), 
 *    		getTrabalhadors() , setTrabalhadors(ArrayList<Pessoa>), 
 *    		getColunas() , setColunas(String[]), 
 *    		getColumnName(int), 
 *    		getColumnCount(), 
 *    		getRowCount() e 
 *    		getValueAt(int, int).
 * 
 */

import java.util.ArrayList;
import java.util.List;

import javax.swing.table.AbstractTableModel;

import br.ucb.cesbdao.beans.Trabalhador;

@SuppressWarnings("serial")
public class ModeloTabelaAtendenteAtnd extends AbstractTableModel{

	private List<Trabalhador> atendentes  = null;
	private String []colunas = new String[] {"ID","Nome","Sexo","Telefone","Status"};

	public ModeloTabelaAtendenteAtnd(){
		this.atendentes = new ArrayList<Trabalhador>();
	}

	public List<Trabalhador> getTrabalhadors() {
		return atendentes;
	}

	public void setTrabalhadors(ArrayList<Trabalhador> atendentes) {
		for(Trabalhador atendente : atendentes)
			this.atendentes.add(atendente);
	}

	public String[] getColunas() {
		return colunas;
	}

	public void setColunas(String[] colunas) {
		this.colunas = colunas;
	}

	@Override
	public String getColumnName(int col){
		return colunas[col];
	}

	public int getColumnCount() {
		return getColunas().length;
	}

	public int getRowCount() {
		return getTrabalhadors().size();
	}
	public Trabalhador getTrabalhadorAt(int row){
		return atendentes.get(row);
	}

	public Object getValueAt(int rowIndex, int columnIndex) {
		Trabalhador atendente = (Trabalhador)atendentes.get(rowIndex);
		switch(columnIndex){
		case 0:
			return atendente.getId();    
		case 1:
			return atendente.getNome();
		case 2:
			return atendente.getSexo()=='M'?"Masculino":"Feminino";
		case 3:
			return atendente.getTelefone();
		case 4:
			return atendente.getStatus() == 'A'?"Ativo":"Inativo";
		}
		return null;
	}
}
